Piter Pasma is a generative artist from the Netherlands. I had an opportunity to speak with him about his deep background in creative coding and his upcoming Art Blocks project Skulptuur.
Piter Pasma: I've always been drawing a lot, especially cartoons. I think this definitely helped build my visual design skills and confidence. Knowing how to draw also helps me to program a computer to draw, although that's more relevant for my rayhatching artworks than this release.
PP: I started coding when I was nine, my second program was a GOTO10-style sequence of rotating dashes across the screen. In 1997, I started democoding. The demoscene is an international computer art subculture focused on producing demos: self-contained, sometimes extremely small, computer programs that produce audiovisual presentations. The purpose of a demo is to show off programming, visual art, and musical skills. I have released four prize winning 4k demos. They were released at demoparties, which are kind of between festivals and like LAN-parties, except nobody's gaming, everyone is making art or socializing. Over a thousand people in a big hall, each with their own PC, and a huge cinema screen and giant speakers for showing the demo competitions.
Demoscene links:
youtube.com/watch?v=DYopuMRVN6Q
youtube.com/watch?v=gv-gHBz4hgw
demozoo.org/sceners/17360
tweakers.net/geek/179762/duitsland-erkent-demoscene-als-cultureel-erfgoed-waaronder-kunst-van-nederlander
PP: Yes, while participating in the demoscene, I also became aware of generative art. I subscribed to the eu-gene generative art mailing list for a few years in the early 2000s, but everything seemed to me at the time to be very experimental and conceptual. There were some very interesting discussions, as well as characters, on that mailing list. However, at the time they seemed more interested in conceptually generative aspects of the art, and my interest was, and still is, in creating aesthetically impactful generative art. I have a background in computational science and machine learning. I've been playing around with creative code ever since, but mostly keeping it to myself. I didn't know what was out there. It was not until summer 2019 that I started posting my works to Instagram, which were incredibly well received and quickly got me some recognition. I also discovered all the other amazing generative artists out there.
PP: After I sold my first digital artworks to a Danish Festival (which unfortunately didn't happen due to the pandemic), I bought my plotter. It completely changed the way I approached my art. A plotter is only able to draw lines and is unable to erase previous lines. This is very different from the way a generative artist draws in, say, p5js. I wanted to play with SDFs, the mathematical functions that describe the 3D shapes in my projects, but I couldn't use shaders, because you can't plot those :) So I wrote a program that I call a "rayhatcher"—it creates hatched drawings of the 3D forms defined by SDFs, using raymarching.
PP: At the start of 2021, Genuary, the generative art month took place. I was lead organizer for this project, kicking it off and collecting thirty-one amazing code prompts for people to produce a generative art piece every day, for a month. I had a lot of help from the amazing people at Generative Artists Club, brainstorming the prompts, helping out with the website, editing and promotion. Genuary was a huge success, I estimate at least 100 people must have actively participated. Not all, but an impressive amount managing the full thirty-one days of dailies. I can generally say that participating was a lot more effort than putting it together, but it was a lot of fun. Doing a month of dailies is also extremely good practice for a generative artist. I saw many people "level up" a few notches, so to say. I'm going to start with the organization of Genuary 2022 soon, hopefully. But it'll be a while before you'll hear much about it. I might do a few calls for code prompts, we can use all the inspiration :) I also created a high quality 176 byte PRNG and offered it to the AB community to use in their scripts. It's been used in quite a number of projects by now, because it's very small and provides easy to use, high-quality random numbers.
Genuary links:
genuary2021.github.io
genuary2021.github.io/prompts
symbiocene.gallery/genuary2021
PP: I remember the first time I heard about NFTs were the Rare Pepe's, many years ago. I mainly remember being puzzled about how Bitcoin could allow someone to "own" a JPEG, and mistakenly thought there was something special about the JPEG itself. I became aware of them again as I started seeing Fabin Rasheed experiment with them, but I still didn't get it. It wasn't until Dmitri released Ringers on Art Blocks that I really saw the possibilities here. This was it, the thing I've been unknowingly practicing for all my life.
PP: About four years ago I read Inigo Quilez' article about Monte Carlo path tracing. It fascinated me tremendously and I built a CPU-based implementation in Processing. It was very slow. But the outputs were already surpassing my expectations. I was able to practice with the construction of SDFs when working on my rayhatcher that I mentioned earlier. But I was running into limitations with its lighting model, everything running on CPU in Javascript. I knew I was able to get much more photo realistic results using path tracing. So I finally took the plunge and wrote the WebGL2 skeleton code that I needed for MC path tracing, and quickly had a working prototype. I've become fascinated with the concept of uneven subdivisions and their relation to polyrhythms. Inspired by this, I created Algorithmic Sculpture 1. It is the intersection of a stack of three double-shelled spheres, and two rounded cubes. This is analogous to a polyrhythm of 2:3, the hemiola.
Since I was also on the list for Art Blocks, I started experimenting with generating other combinations of polyrhythms, in grids, using various types of shapes. The results immediately were very promising, and by that time you contacted me, and I had to decide what my project was going to be. I had one other idea, which you may or may not see in a later drop (it's very different), but during a chat with Aaron Penne, we came to the conclusion that whatever I was doing with the MC path tracer was going to be groundbreaking and never seen before on Art Blocks. I really have to give a shoutout to Inigo Quilez for the amazing articles that he writes, such an incredible resource to get onto the path of using SDFs and all the tricks available— learning to craft my own, which are really the secret sauce here.
PP: Be on the lookout for the more unique types of shapes that some of the combinations can yield. During development I've seen some really unique and unexpected forms. Another thing to look out for is emergent effects from the lighting. There are some gorgeous different types of backlighting to be discovered. Sometimes reflective surfaces create caustics on the diffuse ones. Sometimes the sun will frame a form just right.
PP: Take a look at the source code! You don't need to understand it, but just see for yourself how tiny 6370 bytes of text look. That is generating all these shapes. And the photorealistic renderer as well. All these uniquely beautiful images. There's also a greeting list in there for my friends. It is a string at the end, between parentheses, because it is the parameter to the function call that starts the entire program. This is a way of showing that I couldn't have done this without them.
PP: I am currently most active on Twitter, but you can also follow me on Instagram. In both cases my username is @piterpasma. I also have a website.